package com.box.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class DbPersonInfoExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DbPersonInfoExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("name is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("name is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("name =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("name <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("name >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("name >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("name <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("name <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("name like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("name not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("name in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("name not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("name between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("name not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andAvatarIsNull() {
            addCriterion("avatar is null");
            return (Criteria) this;
        }

        public Criteria andAvatarIsNotNull() {
            addCriterion("avatar is not null");
            return (Criteria) this;
        }

        public Criteria andAvatarEqualTo(String value) {
            addCriterion("avatar =", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarNotEqualTo(String value) {
            addCriterion("avatar <>", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarGreaterThan(String value) {
            addCriterion("avatar >", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarGreaterThanOrEqualTo(String value) {
            addCriterion("avatar >=", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarLessThan(String value) {
            addCriterion("avatar <", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarLessThanOrEqualTo(String value) {
            addCriterion("avatar <=", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarLike(String value) {
            addCriterion("avatar like", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarNotLike(String value) {
            addCriterion("avatar not like", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarIn(List<String> values) {
            addCriterion("avatar in", values, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarNotIn(List<String> values) {
            addCriterion("avatar not in", values, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarBetween(String value1, String value2) {
            addCriterion("avatar between", value1, value2, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarNotBetween(String value1, String value2) {
            addCriterion("avatar not between", value1, value2, "avatar");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNull() {
            addCriterion("description is null");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNotNull() {
            addCriterion("description is not null");
            return (Criteria) this;
        }

        public Criteria andDescriptionEqualTo(String value) {
            addCriterion("description =", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotEqualTo(String value) {
            addCriterion("description <>", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThan(String value) {
            addCriterion("description >", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("description >=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThan(String value) {
            addCriterion("description <", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThanOrEqualTo(String value) {
            addCriterion("description <=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLike(String value) {
            addCriterion("description like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotLike(String value) {
            addCriterion("description not like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionIn(List<String> values) {
            addCriterion("description in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotIn(List<String> values) {
            addCriterion("description not in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionBetween(String value1, String value2) {
            addCriterion("description between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotBetween(String value1, String value2) {
            addCriterion("description not between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andOccupationIsNull() {
            addCriterion("occupation is null");
            return (Criteria) this;
        }

        public Criteria andOccupationIsNotNull() {
            addCriterion("occupation is not null");
            return (Criteria) this;
        }

        public Criteria andOccupationEqualTo(String value) {
            addCriterion("occupation =", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationNotEqualTo(String value) {
            addCriterion("occupation <>", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationGreaterThan(String value) {
            addCriterion("occupation >", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationGreaterThanOrEqualTo(String value) {
            addCriterion("occupation >=", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationLessThan(String value) {
            addCriterion("occupation <", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationLessThanOrEqualTo(String value) {
            addCriterion("occupation <=", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationLike(String value) {
            addCriterion("occupation like", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationNotLike(String value) {
            addCriterion("occupation not like", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationIn(List<String> values) {
            addCriterion("occupation in", values, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationNotIn(List<String> values) {
            addCriterion("occupation not in", values, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationBetween(String value1, String value2) {
            addCriterion("occupation between", value1, value2, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationNotBetween(String value1, String value2) {
            addCriterion("occupation not between", value1, value2, "occupation");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("createTime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("createTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("createTime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("createTime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("createTime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("createTime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("createTime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("createTime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("createTime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("createTime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("createTime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("createTime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andIndexpageIsNull() {
            addCriterion("indexPage is null");
            return (Criteria) this;
        }

        public Criteria andIndexpageIsNotNull() {
            addCriterion("indexPage is not null");
            return (Criteria) this;
        }

        public Criteria andIndexpageEqualTo(String value) {
            addCriterion("indexPage =", value, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageNotEqualTo(String value) {
            addCriterion("indexPage <>", value, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageGreaterThan(String value) {
            addCriterion("indexPage >", value, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageGreaterThanOrEqualTo(String value) {
            addCriterion("indexPage >=", value, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageLessThan(String value) {
            addCriterion("indexPage <", value, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageLessThanOrEqualTo(String value) {
            addCriterion("indexPage <=", value, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageLike(String value) {
            addCriterion("indexPage like", value, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageNotLike(String value) {
            addCriterion("indexPage not like", value, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageIn(List<String> values) {
            addCriterion("indexPage in", values, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageNotIn(List<String> values) {
            addCriterion("indexPage not in", values, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageBetween(String value1, String value2) {
            addCriterion("indexPage between", value1, value2, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexpageNotBetween(String value1, String value2) {
            addCriterion("indexPage not between", value1, value2, "indexpage");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlIsNull() {
            addCriterion("indexDownLoadUrl is null");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlIsNotNull() {
            addCriterion("indexDownLoadUrl is not null");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlEqualTo(String value) {
            addCriterion("indexDownLoadUrl =", value, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlNotEqualTo(String value) {
            addCriterion("indexDownLoadUrl <>", value, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlGreaterThan(String value) {
            addCriterion("indexDownLoadUrl >", value, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlGreaterThanOrEqualTo(String value) {
            addCriterion("indexDownLoadUrl >=", value, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlLessThan(String value) {
            addCriterion("indexDownLoadUrl <", value, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlLessThanOrEqualTo(String value) {
            addCriterion("indexDownLoadUrl <=", value, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlLike(String value) {
            addCriterion("indexDownLoadUrl like", value, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlNotLike(String value) {
            addCriterion("indexDownLoadUrl not like", value, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlIn(List<String> values) {
            addCriterion("indexDownLoadUrl in", values, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlNotIn(List<String> values) {
            addCriterion("indexDownLoadUrl not in", values, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlBetween(String value1, String value2) {
            addCriterion("indexDownLoadUrl between", value1, value2, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexdownloadurlNotBetween(String value1, String value2) {
            addCriterion("indexDownLoadUrl not between", value1, value2, "indexdownloadurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlIsNull() {
            addCriterion("indexPageUrl is null");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlIsNotNull() {
            addCriterion("indexPageUrl is not null");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlEqualTo(String value) {
            addCriterion("indexPageUrl =", value, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlNotEqualTo(String value) {
            addCriterion("indexPageUrl <>", value, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlGreaterThan(String value) {
            addCriterion("indexPageUrl >", value, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlGreaterThanOrEqualTo(String value) {
            addCriterion("indexPageUrl >=", value, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlLessThan(String value) {
            addCriterion("indexPageUrl <", value, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlLessThanOrEqualTo(String value) {
            addCriterion("indexPageUrl <=", value, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlLike(String value) {
            addCriterion("indexPageUrl like", value, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlNotLike(String value) {
            addCriterion("indexPageUrl not like", value, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlIn(List<String> values) {
            addCriterion("indexPageUrl in", values, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlNotIn(List<String> values) {
            addCriterion("indexPageUrl not in", values, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlBetween(String value1, String value2) {
            addCriterion("indexPageUrl between", value1, value2, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andIndexpageurlNotBetween(String value1, String value2) {
            addCriterion("indexPageUrl not between", value1, value2, "indexpageurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeIsNull() {
            addCriterion("MyProgremLange is null");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeIsNotNull() {
            addCriterion("MyProgremLange is not null");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeEqualTo(String value) {
            addCriterion("MyProgremLange =", value, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeNotEqualTo(String value) {
            addCriterion("MyProgremLange <>", value, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeGreaterThan(String value) {
            addCriterion("MyProgremLange >", value, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeGreaterThanOrEqualTo(String value) {
            addCriterion("MyProgremLange >=", value, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeLessThan(String value) {
            addCriterion("MyProgremLange <", value, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeLessThanOrEqualTo(String value) {
            addCriterion("MyProgremLange <=", value, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeLike(String value) {
            addCriterion("MyProgremLange like", value, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeNotLike(String value) {
            addCriterion("MyProgremLange not like", value, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeIn(List<String> values) {
            addCriterion("MyProgremLange in", values, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeNotIn(List<String> values) {
            addCriterion("MyProgremLange not in", values, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeBetween(String value1, String value2) {
            addCriterion("MyProgremLange between", value1, value2, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremlangeNotBetween(String value1, String value2) {
            addCriterion("MyProgremLange not between", value1, value2, "myprogremlange");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlIsNull() {
            addCriterion("MyProgremUrl is null");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlIsNotNull() {
            addCriterion("MyProgremUrl is not null");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlEqualTo(String value) {
            addCriterion("MyProgremUrl =", value, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlNotEqualTo(String value) {
            addCriterion("MyProgremUrl <>", value, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlGreaterThan(String value) {
            addCriterion("MyProgremUrl >", value, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlGreaterThanOrEqualTo(String value) {
            addCriterion("MyProgremUrl >=", value, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlLessThan(String value) {
            addCriterion("MyProgremUrl <", value, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlLessThanOrEqualTo(String value) {
            addCriterion("MyProgremUrl <=", value, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlLike(String value) {
            addCriterion("MyProgremUrl like", value, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlNotLike(String value) {
            addCriterion("MyProgremUrl not like", value, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlIn(List<String> values) {
            addCriterion("MyProgremUrl in", values, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlNotIn(List<String> values) {
            addCriterion("MyProgremUrl not in", values, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlBetween(String value1, String value2) {
            addCriterion("MyProgremUrl between", value1, value2, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andMyprogremurlNotBetween(String value1, String value2) {
            addCriterion("MyProgremUrl not between", value1, value2, "myprogremurl");
            return (Criteria) this;
        }

        public Criteria andServervenderIsNull() {
            addCriterion("ServerVender is null");
            return (Criteria) this;
        }

        public Criteria andServervenderIsNotNull() {
            addCriterion("ServerVender is not null");
            return (Criteria) this;
        }

        public Criteria andServervenderEqualTo(String value) {
            addCriterion("ServerVender =", value, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderNotEqualTo(String value) {
            addCriterion("ServerVender <>", value, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderGreaterThan(String value) {
            addCriterion("ServerVender >", value, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderGreaterThanOrEqualTo(String value) {
            addCriterion("ServerVender >=", value, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderLessThan(String value) {
            addCriterion("ServerVender <", value, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderLessThanOrEqualTo(String value) {
            addCriterion("ServerVender <=", value, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderLike(String value) {
            addCriterion("ServerVender like", value, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderNotLike(String value) {
            addCriterion("ServerVender not like", value, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderIn(List<String> values) {
            addCriterion("ServerVender in", values, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderNotIn(List<String> values) {
            addCriterion("ServerVender not in", values, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderBetween(String value1, String value2) {
            addCriterion("ServerVender between", value1, value2, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderNotBetween(String value1, String value2) {
            addCriterion("ServerVender not between", value1, value2, "servervender");
            return (Criteria) this;
        }

        public Criteria andServervenderurlIsNull() {
            addCriterion("ServerVenderUrl is null");
            return (Criteria) this;
        }

        public Criteria andServervenderurlIsNotNull() {
            addCriterion("ServerVenderUrl is not null");
            return (Criteria) this;
        }

        public Criteria andServervenderurlEqualTo(String value) {
            addCriterion("ServerVenderUrl =", value, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlNotEqualTo(String value) {
            addCriterion("ServerVenderUrl <>", value, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlGreaterThan(String value) {
            addCriterion("ServerVenderUrl >", value, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlGreaterThanOrEqualTo(String value) {
            addCriterion("ServerVenderUrl >=", value, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlLessThan(String value) {
            addCriterion("ServerVenderUrl <", value, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlLessThanOrEqualTo(String value) {
            addCriterion("ServerVenderUrl <=", value, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlLike(String value) {
            addCriterion("ServerVenderUrl like", value, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlNotLike(String value) {
            addCriterion("ServerVenderUrl not like", value, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlIn(List<String> values) {
            addCriterion("ServerVenderUrl in", values, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlNotIn(List<String> values) {
            addCriterion("ServerVenderUrl not in", values, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlBetween(String value1, String value2) {
            addCriterion("ServerVenderUrl between", value1, value2, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andServervenderurlNotBetween(String value1, String value2) {
            addCriterion("ServerVenderUrl not between", value1, value2, "servervenderurl");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceIsNull() {
            addCriterion("FreeCloudSpace is null");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceIsNotNull() {
            addCriterion("FreeCloudSpace is not null");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceEqualTo(String value) {
            addCriterion("FreeCloudSpace =", value, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceNotEqualTo(String value) {
            addCriterion("FreeCloudSpace <>", value, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceGreaterThan(String value) {
            addCriterion("FreeCloudSpace >", value, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceGreaterThanOrEqualTo(String value) {
            addCriterion("FreeCloudSpace >=", value, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceLessThan(String value) {
            addCriterion("FreeCloudSpace <", value, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceLessThanOrEqualTo(String value) {
            addCriterion("FreeCloudSpace <=", value, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceLike(String value) {
            addCriterion("FreeCloudSpace like", value, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceNotLike(String value) {
            addCriterion("FreeCloudSpace not like", value, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceIn(List<String> values) {
            addCriterion("FreeCloudSpace in", values, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceNotIn(List<String> values) {
            addCriterion("FreeCloudSpace not in", values, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceBetween(String value1, String value2) {
            addCriterion("FreeCloudSpace between", value1, value2, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspaceNotBetween(String value1, String value2) {
            addCriterion("FreeCloudSpace not between", value1, value2, "freecloudspace");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesIsNull() {
            addCriterion("FreeCloudSpaceDes is null");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesIsNotNull() {
            addCriterion("FreeCloudSpaceDes is not null");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesEqualTo(String value) {
            addCriterion("FreeCloudSpaceDes =", value, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesNotEqualTo(String value) {
            addCriterion("FreeCloudSpaceDes <>", value, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesGreaterThan(String value) {
            addCriterion("FreeCloudSpaceDes >", value, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesGreaterThanOrEqualTo(String value) {
            addCriterion("FreeCloudSpaceDes >=", value, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesLessThan(String value) {
            addCriterion("FreeCloudSpaceDes <", value, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesLessThanOrEqualTo(String value) {
            addCriterion("FreeCloudSpaceDes <=", value, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesLike(String value) {
            addCriterion("FreeCloudSpaceDes like", value, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesNotLike(String value) {
            addCriterion("FreeCloudSpaceDes not like", value, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesIn(List<String> values) {
            addCriterion("FreeCloudSpaceDes in", values, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesNotIn(List<String> values) {
            addCriterion("FreeCloudSpaceDes not in", values, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesBetween(String value1, String value2) {
            addCriterion("FreeCloudSpaceDes between", value1, value2, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andFreecloudspacedesNotBetween(String value1, String value2) {
            addCriterion("FreeCloudSpaceDes not between", value1, value2, "freecloudspacedes");
            return (Criteria) this;
        }

        public Criteria andImagefirstIsNull() {
            addCriterion("imageFirst is null");
            return (Criteria) this;
        }

        public Criteria andImagefirstIsNotNull() {
            addCriterion("imageFirst is not null");
            return (Criteria) this;
        }

        public Criteria andImagefirstEqualTo(String value) {
            addCriterion("imageFirst =", value, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstNotEqualTo(String value) {
            addCriterion("imageFirst <>", value, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstGreaterThan(String value) {
            addCriterion("imageFirst >", value, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstGreaterThanOrEqualTo(String value) {
            addCriterion("imageFirst >=", value, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstLessThan(String value) {
            addCriterion("imageFirst <", value, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstLessThanOrEqualTo(String value) {
            addCriterion("imageFirst <=", value, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstLike(String value) {
            addCriterion("imageFirst like", value, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstNotLike(String value) {
            addCriterion("imageFirst not like", value, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstIn(List<String> values) {
            addCriterion("imageFirst in", values, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstNotIn(List<String> values) {
            addCriterion("imageFirst not in", values, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstBetween(String value1, String value2) {
            addCriterion("imageFirst between", value1, value2, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagefirstNotBetween(String value1, String value2) {
            addCriterion("imageFirst not between", value1, value2, "imagefirst");
            return (Criteria) this;
        }

        public Criteria andImagetwothIsNull() {
            addCriterion("imageTwoth is null");
            return (Criteria) this;
        }

        public Criteria andImagetwothIsNotNull() {
            addCriterion("imageTwoth is not null");
            return (Criteria) this;
        }

        public Criteria andImagetwothEqualTo(String value) {
            addCriterion("imageTwoth =", value, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothNotEqualTo(String value) {
            addCriterion("imageTwoth <>", value, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothGreaterThan(String value) {
            addCriterion("imageTwoth >", value, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothGreaterThanOrEqualTo(String value) {
            addCriterion("imageTwoth >=", value, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothLessThan(String value) {
            addCriterion("imageTwoth <", value, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothLessThanOrEqualTo(String value) {
            addCriterion("imageTwoth <=", value, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothLike(String value) {
            addCriterion("imageTwoth like", value, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothNotLike(String value) {
            addCriterion("imageTwoth not like", value, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothIn(List<String> values) {
            addCriterion("imageTwoth in", values, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothNotIn(List<String> values) {
            addCriterion("imageTwoth not in", values, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothBetween(String value1, String value2) {
            addCriterion("imageTwoth between", value1, value2, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagetwothNotBetween(String value1, String value2) {
            addCriterion("imageTwoth not between", value1, value2, "imagetwoth");
            return (Criteria) this;
        }

        public Criteria andImagethirthIsNull() {
            addCriterion("imageThirth is null");
            return (Criteria) this;
        }

        public Criteria andImagethirthIsNotNull() {
            addCriterion("imageThirth is not null");
            return (Criteria) this;
        }

        public Criteria andImagethirthEqualTo(String value) {
            addCriterion("imageThirth =", value, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthNotEqualTo(String value) {
            addCriterion("imageThirth <>", value, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthGreaterThan(String value) {
            addCriterion("imageThirth >", value, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthGreaterThanOrEqualTo(String value) {
            addCriterion("imageThirth >=", value, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthLessThan(String value) {
            addCriterion("imageThirth <", value, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthLessThanOrEqualTo(String value) {
            addCriterion("imageThirth <=", value, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthLike(String value) {
            addCriterion("imageThirth like", value, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthNotLike(String value) {
            addCriterion("imageThirth not like", value, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthIn(List<String> values) {
            addCriterion("imageThirth in", values, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthNotIn(List<String> values) {
            addCriterion("imageThirth not in", values, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthBetween(String value1, String value2) {
            addCriterion("imageThirth between", value1, value2, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagethirthNotBetween(String value1, String value2) {
            addCriterion("imageThirth not between", value1, value2, "imagethirth");
            return (Criteria) this;
        }

        public Criteria andImagefourthIsNull() {
            addCriterion("imageFourth is null");
            return (Criteria) this;
        }

        public Criteria andImagefourthIsNotNull() {
            addCriterion("imageFourth is not null");
            return (Criteria) this;
        }

        public Criteria andImagefourthEqualTo(String value) {
            addCriterion("imageFourth =", value, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthNotEqualTo(String value) {
            addCriterion("imageFourth <>", value, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthGreaterThan(String value) {
            addCriterion("imageFourth >", value, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthGreaterThanOrEqualTo(String value) {
            addCriterion("imageFourth >=", value, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthLessThan(String value) {
            addCriterion("imageFourth <", value, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthLessThanOrEqualTo(String value) {
            addCriterion("imageFourth <=", value, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthLike(String value) {
            addCriterion("imageFourth like", value, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthNotLike(String value) {
            addCriterion("imageFourth not like", value, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthIn(List<String> values) {
            addCriterion("imageFourth in", values, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthNotIn(List<String> values) {
            addCriterion("imageFourth not in", values, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthBetween(String value1, String value2) {
            addCriterion("imageFourth between", value1, value2, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefourthNotBetween(String value1, String value2) {
            addCriterion("imageFourth not between", value1, value2, "imagefourth");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqIsNull() {
            addCriterion("imageFirstQQ is null");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqIsNotNull() {
            addCriterion("imageFirstQQ is not null");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqEqualTo(Integer value) {
            addCriterion("imageFirstQQ =", value, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqNotEqualTo(Integer value) {
            addCriterion("imageFirstQQ <>", value, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqGreaterThan(Integer value) {
            addCriterion("imageFirstQQ >", value, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqGreaterThanOrEqualTo(Integer value) {
            addCriterion("imageFirstQQ >=", value, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqLessThan(Integer value) {
            addCriterion("imageFirstQQ <", value, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqLessThanOrEqualTo(Integer value) {
            addCriterion("imageFirstQQ <=", value, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqIn(List<Integer> values) {
            addCriterion("imageFirstQQ in", values, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqNotIn(List<Integer> values) {
            addCriterion("imageFirstQQ not in", values, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqBetween(Integer value1, Integer value2) {
            addCriterion("imageFirstQQ between", value1, value2, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagefirstqqNotBetween(Integer value1, Integer value2) {
            addCriterion("imageFirstQQ not between", value1, value2, "imagefirstqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqIsNull() {
            addCriterion("imageTwothQQ is null");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqIsNotNull() {
            addCriterion("imageTwothQQ is not null");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqEqualTo(Integer value) {
            addCriterion("imageTwothQQ =", value, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqNotEqualTo(Integer value) {
            addCriterion("imageTwothQQ <>", value, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqGreaterThan(Integer value) {
            addCriterion("imageTwothQQ >", value, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqGreaterThanOrEqualTo(Integer value) {
            addCriterion("imageTwothQQ >=", value, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqLessThan(Integer value) {
            addCriterion("imageTwothQQ <", value, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqLessThanOrEqualTo(Integer value) {
            addCriterion("imageTwothQQ <=", value, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqIn(List<Integer> values) {
            addCriterion("imageTwothQQ in", values, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqNotIn(List<Integer> values) {
            addCriterion("imageTwothQQ not in", values, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqBetween(Integer value1, Integer value2) {
            addCriterion("imageTwothQQ between", value1, value2, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagetwothqqNotBetween(Integer value1, Integer value2) {
            addCriterion("imageTwothQQ not between", value1, value2, "imagetwothqq");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatIsNull() {
            addCriterion("imageThirthWechat is null");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatIsNotNull() {
            addCriterion("imageThirthWechat is not null");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatEqualTo(String value) {
            addCriterion("imageThirthWechat =", value, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatNotEqualTo(String value) {
            addCriterion("imageThirthWechat <>", value, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatGreaterThan(String value) {
            addCriterion("imageThirthWechat >", value, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatGreaterThanOrEqualTo(String value) {
            addCriterion("imageThirthWechat >=", value, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatLessThan(String value) {
            addCriterion("imageThirthWechat <", value, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatLessThanOrEqualTo(String value) {
            addCriterion("imageThirthWechat <=", value, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatLike(String value) {
            addCriterion("imageThirthWechat like", value, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatNotLike(String value) {
            addCriterion("imageThirthWechat not like", value, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatIn(List<String> values) {
            addCriterion("imageThirthWechat in", values, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatNotIn(List<String> values) {
            addCriterion("imageThirthWechat not in", values, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatBetween(String value1, String value2) {
            addCriterion("imageThirthWechat between", value1, value2, "imagethirthwechat");
            return (Criteria) this;
        }

        public Criteria andImagethirthwechatNotBetween(String value1, String value2) {
            addCriterion("imageThirthWechat not between", value1, value2, "imagethirthwechat");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}